package com.wizz.trade.trading.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 期货交易表
 * </p>
 *
 * @author fyftless
 * @since 2023-08-28 02:16:03
 */
@Getter
@Setter
@TableName("transaction")
public class Transaction implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 品种name（统计）
     */
    @TableField("variety")
    private Integer variety;

    /**
     * 规格name（统计）
     */
    @TableField("grade")
    private Integer grade;

    /**
     * 本公司账套简称shortname(统计)
     */
    @TableField("ledger")
    private Integer ledger;

    /**
     * 本公司部门名称name（统计）
     */
    @TableField("ourdept")
    private Integer ourdept;

    /**
     * 期货公司简称
     */
    @TableField("futures")
    private Integer futures;

    /**
     * 币种
     */
    @TableField("currency")
    private Integer currency;

    /**
     * 保值类型（1建仓、2移仓）
     */
    @TableField("hedgetype")
    private Integer hedgetype;

    /**
     * 期货合约
     */
    @TableField("contract")
    private String contract;

    /**
     * 开仓open/平仓close
     */
    @TableField("oc")
    private Integer oc;

    /**
     * 买/卖
     */
    @TableField("bs")
    private Integer bs;

    /**
     * 成交手数
     */
    @TableField("hands")
    private Integer hands;

    /**
     * 每手数量
     */
    @TableField("perhands")
    private Integer perhands;

    /**
     * 重量单位variety.unit
     */
    @TableField("unit")
    private String unit;

    /**
     * 加权价
     */
    @TableField("weighting")
    private BigDecimal weighting;

    /**
     * 成交日期
     */
    @TableField("date")
    private LocalDate date;

    /**
     * 期货平仓盈亏
     */
    @TableField("fprofit")
    private BigDecimal fprofit;

    /**
     * 备注
     */
    @TableField("note")
    private String note;

    /**
     * 头寸号。账套+本部门+期货公司+6位日期+3位序号
     */
    @TableField("positionno")
    private String positionno;

    /**
     * 交易单号。“F”+“O”/“C”+账套+品种+6位日期+3位序号
     */
    @TableField("transactionno")
    private String transactionno;
}
